/* PROBLEME N° 1
 * Calculer la somme de tous les entiers multiples de 3 et 5
 * inférieurs à 1000
 */
#include <stdio.h>
#include <stdlib.h>

long sum(int);
long sumMultiples(int, int);

int main(int argc, char *argv[])
{
    long somme = 0, n = 1000;
    somme = sumMultiples(n, 3) + sumMultiples(n, 5) - sumMultiples(n, 15);
    printf("%ld\n", somme);

    return 0;
}

/* Somme de tous les entiers de 1 à n */
long sum(int n)
{
    return n * (n + 1) / 2;
}

/* Somme de tous les entiers de 1 à n qui sont multiples de x */
long sumMultiples(int n, int x)
{
    return sum((n - 1) / x) * x;
}
